Acyclic dependencies principle